(function($f) {	$f.extend.custom("myPlugin2", function(self) {

	"use strict";

	// plugin info
	this.info = {
		title: "My Plugin 2",
		version: "0.0.1" // major.minor.build
	};

	// external files which are to be loaded during initialization process
	// value of each item here should be 
	// { name: "", file: "", cond: "an optional function that returns true/false for conditional include" }
	// files are loaded in specified order one after another
	// files of following types can be included:
	// JavaScript (*.js), Stylesheets (*.css) and Templates (*.html) and any other type of files which
	// are defined in "dynamicHtmlEndPoints" configuration setting
	this.include = [
		{ name: "koJS", file: "http://ajax.aspnetcdn.com/ajax/knockout/knockout-2.2.1.js" },
		{ name: "koViewTemplate", file: "templates/koView.html" }
	];

	// NOTE: knockout JS is being loaded from somewhere on Internet
	// Also see html is loaded as a template 
	
	// ready handler
	// returns: (void)
	this.onReady = function() { 
		// viewModel to be used in view
		var koViewModel = function MyViewModel() {
			 this.buyer = { name: 'Franklin', credits: 250 };
			 this.seller = { name: 'Mario', credits: 5800 };
		 };

		// aply bindings
		ko.applyBindings(new koViewModel());
		
		// load info as well
		if (window.Modernizr) {
			$("#modernizrInfo").append("This browser " + (window.Modernizr.localstorage ? "supports" : "do not support") + " local storage.");
		};
	};
	
}); }(fluid));
